﻿<html DIR="LTR" xmlns:tool="http://www.microsoft.com/tooltip" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ddue="http://ddue.schemas.microsoft.com/authoring/2003/5" xmlns:MSHelp="http://msdn.microsoft.com/mshelp">
  <head>
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=utf-8" />
    <META NAME="save" CONTENT="history" />
    <title>Protegendo cadeias de conexão</title>
    
    <link rel="stylesheet" type="text/css" href="../local/Classic.css">
      
    </link>
    
    <script src="../local/script.js">
      
    </script><script src="../local/script_main.js">&amp;nbsp;</script>
  </head>
  <body>
    <!--Topic built:04/01/2010 05:03:30-->

    
    
    
    
    
    
    
    
    
    <div id="header">
      <table width="100%" id="topTable"><tr>
          <td align="left">
            <span id="headerBold">Protegendo cadeias de conexão</span>
          </td>
          <td align="right">
            
          </td>
        </tr></table>
      
      
      
    </div>
    <div id="mainSection">
      
        
        
    <font color="DarkGray">
      
    </font>
    <p />
    
    <p />
  
        <div id="introductionSection" class="section">
    <p>A proteção do acesso à fonte de dados é uma das metas mais importantes para ajudar a proteger um aplicativo. Para limitar o acesso à fonte de dados, você deve tomar precauções para ajudar a proteger informações sobre a conexão, como ID de usuário, senha e nome da fonte de dados. O armazenamento de uma ID de usuário e senha em texto sem formatação, como no código-fonte, apresenta um erro grave de segurança. Mesmo que você forneça uma versão compilada do código que contenha informações sobre ID de usuário e senha em uma fonte externa, o código compilado pode ser desmontado e a ID de usuário, exposta. Assim, é essencial que as informações críticas, como ID de usuário e senha, não estejam no código. </p>
    <p>É altamente recomendável que você não armazene a senha com a URL de conexão no código-fonte do aplicativo. Em vez disso, considere o armazenamento da senha em um arquivo à parte que tenha acesso restrito. O acesso a esse arquivo pode ser concedido ao contexto no qual o aplicativo está em execução. </p>
    <p>Outra abordagem é armazenar a senha criptografada em um arquivo. Certifique-se de que usar uma API de criptografia que não exija o armazenamento da chave em algum lugar e não derive da senha de um usuário. Por exemplo, você pode considerar o uso de pares de chaves públicas/privadas baseadas no certificado ou usar uma abordagem em que duas partes usam um protocolo de acordo chave (algoritmo Diffie-Hellman) para gerar chaves secretas idênticas para criptografia sem sequer precisar transmitir a chave secreta. </p>
    <p>Se usar informações sobre a cadeia de conexão de uma fonte externa, como um usuário que forneça uma ID de usuário e senha, você deverá validar todas as entradas na fonte para garantir que elas tenham o formato correto e não contenham parâmetros adicionais que afetem a conexão.</p>
  </div><span id="seeAlsoSpan"><h1 class="heading">Consulte também</h1></span><div id="seeAlsoSection" class="section" name="collapseableSection"><a href="90724ec6-a9cb-43ef-903e-793f89410bc0.htm">Protegendo aplicativos do JDBC Driver</a><br /><br /></div><!--[if gte IE 5]>
			<tool:tip element="seeAlsoToolTip" avoidmouse="false"/><tool:tip element="languageFilterToolTip" avoidmouse="false"/><tool:tip element="roleInfoSpan" avoidmouse="false"/>
		<![endif]-->
      <div id="footer" class="section">
        
		<hr />
		
		<span id="fb" class="feedbackcss">
			
			
		</span>
		
		<a href="9bad553b-9e70-4696-8499-2e35f772a1e0.htm">
			
			© 2010 Microsoft Corporation. Todos os direitos reservados.
		</a>
 	
	
      </div>
    </div>
  </body>
</html>